Workflow Activities

Workflows consist of different Activities the determine the behavior of the Workflow. The following is a listing of each Activity available for use in Footprint.

For information about customizing Workflows in Footprint, see the Workflow guide.

AssignShipmentToOrdersActivity

This activity will assign shipments to a given order.

AssignsShipmentToOrderLinesActivity

This activity will assign shipments to a set of order lines.

CancelLicensePlatePickTaskActivity

This activity is used to cancel a license plate pick task

ChangeInventoryStatusActivity

The will change the status of a inventory type to that of a status id the user chooses and set reason code along with it.

CreateAccessorialCharge

This will create and optionally confirm an accessorial charge given its operation code identifier

CreateAndConfirmBlindReceiveTaskActivity

This function will create and/or updates the shipment lines for a shipment and create a receiving for a given shipment and create the inventory.

CreateBlindInboundOrderActivity

This function will create a specific inbound order.

CreateInboundShipmentActivity

This function will create a shipment for a given order.

CreateInspectionRequestActivity

This function creates the specific type of Task for Inspections. All fields are required to be filled with the exception of the notes field.

CreateInventoryStatusChangeRequestActivity

This function is used to change the status either a Lot, Material, License plate or Location based of the input context of InventoryType. Based on context some fields are required while others are ignored. As an example InventoryType=Lot then the Lotid is required but the others LicensePlateId, MaterialId, and LocationId are ignored and thus can be left Null. The DesiredStatusId is the value of the database id for the Inventory Statuses. Note the value 0 is always considered Active, and id =  1 is InActive. These are default in the FootPrint database. For the other value one most consult the database tables directly. The Reason Codes to add or Remove must be a list of ids that are taken from this specific ReasonCodes database table. The value in the Notes field will be applied to the task that is generated when the status is changed. The Request object outputted it the object required by Inventory Status Change Request workflow.

CreateOutboundShipmentActivity

This activity will create a new outbound shipment given a set of input properties. It retruns the Shipment object.

CreatePutawayTaskActivity

This activity will create putaway task given

GetAccountsActivity

This activity will get account objects base of a set of input filters

GetBarcodeParsersActivity

This activity will get barcode parser objects base of a set of input filters

GetLicensePlateActivity

This function will get a list of License Plate based on the input filter criteria. The Loading of the license Plate also loads the expected content.

GetLocationContainingMaterialTagsActivity

This activity will a list of locations given a list on material tags that the location match with

GetLocationsActivity

This function loads a List of locations given a series of filter criteria. Important note here is that the filters sometimes contain the list of object and a list of ids for the same input variable. For example Materials and MaterialIds, then this is encounter the function take the object list as precedence over the ids, and therefore the Ids are ignored and not appended or the union to the object set. Therefore one most choose one or the other approach. Superscript has be used to denote the paired variables in this manner.

GetLotsActivity

This function returns a list of lot objects based on the input filter criteria.

GetMaterialActivity

This function returns a list of material objects based on the input filter criteria.

GetMaterialTagsForLocationActivity

Given a location this will return the list of tags applied to the location

GetMaterialTemperatureActivity

This function will load all the temperature category rules given a list of materials and a warehouse.

GetOrderLinesActivity

This activity will get a list of order line objects given a series of input filters

GetOrderActivity

This function loads a list of order objects that correspond to the list of Orderids provided as input. For example in a Inspection Task workflow, Orderids = New List(Of Int32) From {InputTask.OrderId.Value} can be used to load the order details for the inputted receiving task.

GetPackagesActivity

This activity will get material packages objects based of a set of input filters

GetProjectsActivity

This activity will get project objects based of a set of input filters

GetReasonCodesActivity

This activity will get reason code objects based of a set of input filters

GetShipmentLineActivity

This function will load all shipment lines based on the filter criteria provided.

GetShipmentActivity

This function will load all shipment based on the filter criteria provided.

GetShippingContainersActivity

This activity will get shipping container objects based of a set of input filters

GetShippingItegrationMappingsActivity

This activity will get shipping iteration mapping objects base of a set of input filters

GetShippingManifestsActivity

This activity will get shipping manifest objects based of a set of input filters

GetTagsActivity

This function will return the list of Tags that are checked for a particular object like Material, Location, Lot, or License Plate given the id of the entity in the OwnerIds field.

GetTasksActivity

This activity will get tasks objects based of a set of input filters

GetTemperaturesReadingsActivity

This activity will get temperature reading objects based of a set of input filters

GetUdfActivity

This activity will get user define field objects for a type of object like shipment or orderline and so on based of a set of input filters

GetVendorLotsActivity

This function will load all the vendor Lots that match the input criteria.

LicensePlatePickTaskManualReallocationActivity

This activity will perform a pick task cancel and then reallocate to manual

LicensePlatePickTaskSystemReallocationActivity

This activity will perform a system reallocation

LoadLocationInventoryActivity

This function will load the Location.LicensePlate field in the given object. Normally, this field in Null and the function GetLocationActivity would not load the license plates in order to be efficient. However sometimes we need to load all the inventory of a Location(s). Important note, this can be a heavy functions and delay the workflow execution due to number of plate and inventory. It is recommend to use this function with care.

NewLabelPrintItemActivity

This activity will create the label item to be handled in the event queue of FootPrint

NewReportPrintItemActivity

This activity will create the print item to be handled in the event queue of FootPrint

PrintActivity

This activity will handle a print item to be handled in the event queue of FootPrint

SortLocationsActivity

This function will sort the inputted location list in line based of the sort criteria provided.

SortPackagingsActivity

Given a list of packaging object this will sort the list in the order we are given

ValidateInventoryMoveActivity

This function will validate whether inventory can be moved into the given list of locations. The output is a reduced set of the input locations given. This can result in an empty set and ValidLocation should check to see if its count is 0. The Validation of inventory against the location will check:

  • Temperature category is assigned to a material in the location and the location itself and the location category and location warehouse are not included in any material's list of assigned temperature categories.
  • Mix Lots is false and the number of lots in the location is greater than 1.
  • Mix Vendor Lots is false and the number of vendor lots in the location is greater than 1.
  • Mix Materials is false and the number of materials in the location is greater than 1.
  • Mix Projects is false and the number of projects in the location is greater than 1.
  • Mix Owners is false and the number of owners in the location is greater than 1.
  • Restrict to Replenishment Materials is true, the location has a replenishment material assigned, and the location contains a different material.
  • Restrict to Replenishment Materials is true, the location has a replenishment material tag assigned, and the location contains a material not assigned to that tag.
  • Length, Width, and Height are defined and the location length x width x height is less than the sum of the packaged amount times package length times width times height.
  • Volume Capacity is defined and is less than the sum of the packaged amount times the package volume.
  • Weight Capacity is defined and is less than the sum of the packaged amount times the package weight.
  • Footprint and stack height are defined and footprint times stack height is less than the number of license plates in the location.
  • Do Not Allow Inactive Inventory Statuses and the license plates that contains inactive amount greater than zero.
  • Enabled is false and the inventory operation confirmed was anything other than a LP move or inventory move out of the location into another location.
  • The number of locations in the current warehouse where Primary Pick Location is true is greater than the material's Primary Pick Locations Allowed Per Warehouse value, if not NULL.

ValidateLicensePlateMoveActivity

This function will validate whether the license can be moved into the given list of locations. The output is a reduced set of the input locations given. This can result in an empty set and ValidLocation should check to see if its count is 0. The Validation of license plate against the location will check the conditions outline in the ValidateInventoryMoveActivity

WeightConvertActivity

This activity will convert a weight to another using standard table conversions, eg. Pound to Kilos

LogMessageActivity

This activity insert a log message in to the FootPrint logging queue. It is a way to debug workflows and well as outputting metrics

IsInRangeActivity

This activity is used to determine if a decimal value falls within a given range of values

GetConnectShipPrintOutputsActivity

This activity gets information from a ConnectShip product, specifically the list of print output formats the third party product is connect to on it server.

GetConnectShipLocalPortsActivity

This activity gets information from a ConnectShip product, specifically the list of ports the third party product is connect to on it server.

GetConnectShipDocumentsActivity

This activity gets information from a ConnectShip product, specifically the document e.g manifest document the third party product is connect to on it server.

GetConnectShipDocumentFormatsActivitiy

This activity gets information from a ConnectShip product, specifically the list of document formats (type) the third party product is connect to on it server.

GetConnectShipWindowsPrintersActivity

This activity gets information from a ConnectShip product, specifically the list of windows printer the third party product is connect to on it server.

Last Updated:
06/06/2025